package com.yq.design.builder;


import com.yq.design.builder.simple.CommonHouse;
import com.yq.design.builder.simple.HouseDirector;

/***
 * @ClassName BuilderClient
 * @Description 建造者模式
 * @Author yaoqiang
 * @Date 2021/3/11 10:02
 * @Version 1.0
场景：1、当一个类的构造函数中的参数大于4，有些参数是可选参数，可以考虑使用建造者模式
    2、将产品和产品的监造过程解耦，比如建房子，房子产品类型和建造过程解耦
 */
public class BuilderClient {
    public static void main(String[] args) {
        CommonHouse commonHouse = new CommonHouse();
        HouseDirector houseDirector = new HouseDirector(commonHouse);
        houseDirector.constractHouse();

    }
}
